package com.soft.service;

import java.util.List;

import com.soft.dto.CommentResponse;
import com.soft.entity.Comment;

/**
 * 评论服务：基础CRUD、按关联对象查询，以及生成带回复树的评论响应。
 */
public interface CommentService {
    boolean addComment(Comment comment);
    boolean deleteComment(Integer commentId);
    boolean updateComment(Comment comment);
    Comment getCommentById(Integer commentId);
    List<Comment> listCommentsByWorklogId(Integer worklogId);
    List<Comment> listCommentsByScheduleId(Integer scheduleId);
    List<Comment> listAll();
    List<Comment> listAllForAdmin(); // 管理员专用：返回原始评论内容
    
    // 新增：返回包含回复关系的评论数据
    List<CommentResponse> listCommentsWithRepliesByWorklogId(Integer worklogId);
    List<CommentResponse> listCommentsWithRepliesByScheduleId(Integer scheduleId);
}

